// 1. 导入 express 模块
const express = require('express');
// 导入 path 模块（用于处理文件路径）
const path = require('path');
// 2. 导入自定义路由模块（现在还没有，等下再创建）
const authRoutes = require('./routes/authRoutes'); // 认证相关路由
// 3. 导入中间件（例如cors，用于处理跨域问题）
const cors = require('cors');

// 4. 创建 Express 应用程序实例
const app = express();
// 5. 配置中间件

// 5.1 解析 application/json 类型的请求体
app.use(express.json());
// 5.2 解析 application/x-www-form-urlencoded 类型的请求体
app.use(express.urlencoded({ extended: false })); 

// 5.3 启用 CORS（跨域资源共享），允许所有来源的请求
app.use(cors()); 
// 6. 定义路由

// 6.1 一个最简单的根路径路由，用于测试服务器是否工作
app.get('/', (req, res) => {
  res.json({ message: 'Hello from WeChat App Server!', status: 'OK' });
});

// 6.2 挂载自定义路由模块
// 所有以 '/api/auth' 开头的请求都由 authRoutes 处理
app.use('/api/auth', authRoutes);

// 添加消息路由
const messageRoutes = require('./routes/messageRoutes');
app.use('/api/messages', messageRoutes);
// 引入用户状态路由
const userStatusRoutes = require('./routes/userStatusRoutes');

// 注册用户状态路由
app.use('/api/user-status', userStatusRoutes);
// 7. 导出 app 实例，这样其他文件（如 server.js 或测试文件）可以导入它
module.exports = app;
  